//app.js
App({
  appData: {
    // url: 'https://tongcheng.wuyuzhong.com/api/v1/',
    url: 'http://tongcheng.bh/api/v1/',
    contentType: 'application/json',
  },
  onLaunch: function() {
    //调用API从本地缓存中获取数据
    // 展示本地存储能力
    var logs = wx.getStorageSync('logs') || []
    logs.unshift(Date.now())
    wx.setStorageSync('logs', logs)
    if (wx.canIUse('getUpdateManager')) {
      const updateManager = wx.getUpdateManager()
      updateManager.onCheckForUpdate(function(res) {
        // 请求完新版本信息的回调
        if (res.hasUpdate) {
          updateManager.onUpdateReady(function() {
            wx.showModal({
              title: '更新提示',
              content: '新版本已经准备好，是否重启应用？',
              success: function(res) {
                if (res.confirm) {
                  // 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
                  updateManager.applyUpdate()
                }
              }
            })
          })
          updateManager.onUpdateFailed(function() {
            // 新的版本下载失败
            wx.showModal({
              title: '已经有新版本了哟~',
              content: '新版本已经上线啦~，请您删除当前小程序，重新搜索打开哟~',
            })
          })
        }
      })
    } else {
      // 如果希望用户在最新版本的客户端上体验您的小程序，可以这样子提示
      wx.showModal({
        title: '提示',
        content: '当前微信版本过低，无法使用该功能，请升级到最新微信版本后重试。'
      })
    }
  },
  //在每个page onload的时候的回调
  userInfoCallback: function() {
    var that = this;
    var token = wx.getStorageSync("token");
    return new Promise(function(resolve, reject) {
      if (that.globalData.user) {
        resolve();
      } else {
        wx.request({
          url: that.appData.url + 'user',
          header: {
            'content-type': that.appData.contentType,
            'Accept': that.appData.contentType,
            'Authorization': 'Bearer ' + token
          },
          success: function(res) {
            if (res.statusCode == 200) {
              that.globalData.user = res.data.data;
              //  wx.setStorageSync('user', res.data.data);
              resolve();
            } else {
              //没有权限，登录状态被清除或者已过期,重新登录
              wx.login({
                success: res => {
                  wx.request({
                    url: that.appData.url + 'login',
                    header: {
                      'content-type': that.appData.contentType
                    },
                    data: {
                      code: res.code
                    },
                    method: 'POST',
                    success(res) {
                      // wx.setStorageSync('user', res.data.data.user);
                      that.globalData.user = res.data.data;
                      wx.setStorageSync('token', res.data.data.token);
                      resolve();
                    },
                  });
                }
              });
            }
          }
        });
      }
    });
  },
  globalData: {
    user: null, //网站用户数据
    userInfo: null, //微信用户数据
  }
})